const prefix = '/api';
const suffix = '.do';

const urlMap = {
   'dev': {
      /**
       *  login 验证
       */
      '生成图形验证码唯一id': '/generateImageVerifyCodeId',
      /**
       *  角色管理
       */
      '创建角色': '/createMasterRole',
      '删除角色': '/deleteMasterRole',
      '编辑角色': '/editMasterRole',
      '角色列表': '/masterRoleList',

      /**
       *  菜单管理
       */
      '创建菜单': '/createMasterPagePath',
      '删除菜单': '/deleteMasterPagePath',
      '编辑菜单': '/editMasterPagePath',
      '菜单列表': '/masterPagePath',

      /**
       *  管理员管理
       */
      '创建管理员': '/createMasterUser',
      '删除管理员': '/deleteMasterUser',
      '编辑管理员': '/editMasterUser',
      '管理员列表': '/masterUserList',
      '获取当前管理员权限': '/init',
      '登录': '/sign',
      '退出登录': '/signout',
      /**
      *  漏洞管理
      */
      '漏洞列表': '/vulnerabilityList',
    '生成图形验证码': '/generateImageVerifyCode',


      '创建企业': '/createEnterprise',
      '编辑企业': '/editEnterprise',
      '企业详情': '/enterpriseDetail',
      '获取各个区': '/getNextLevel',
      '禁用企业': '/disableEnterprise',
      '企业相关统计数': '/enterpriseStatistics',
      '企业列表': '/enterpriseList',
      '导出企业': '/exportEnterpriseListRecord',
      '导入企业': '/importEnterpriseList',
      '获取漏洞数': '/vulnerabilityNum',
      '删除漏洞': '/deleteVulnerability',
      '导出漏洞列表': '/vulnerabilityList',
      '合规检测列表': '/monitorRegulationList',
      '获取合规监测数': '/monitorRegulationStatistics',
      '删除合规检测': '/deleteMonitorRegulation',
      '导出合规检测列表': '/exportMonitorRegulationListRecord',
      '创建任务': '/createTask',
      '删除任务': '/deleteTask',
      'Poc列表(下拉框)': '/pocListForOption',
      '协议列表(下拉框)': '/protocolListForOption',
      '漏洞列表(下拉框)': '/vulnerabilityListForOption',
      '任务详情': '/vulnerabilityListForOption',
      '开始暂定结束任务': '/updateTaskStatus',
      '获取任务数量': '/taskNum',
      '任务列表': '/taskList',
   }
};

export const urlService = (type: string, key: string) => {
   const url = urlMap[type][key];
   if (url) {
      return prefix + urlMap[type][key] + suffix;
   } else {
      throw Error(`fail to find url: ${key}`);
   }
};

